package com.niguang.work.api.entity;

import java.util.Date;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.enums.FieldFill;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableLogic;
import java.io.Serializable;

/**
 * <p>
 * 部门
 * </p>
 *
 * @author chenliu
 * @since 2018-07-23
 */
public class AdminDept extends Model<AdminDept> {

    private static final long serialVersionUID = 1L;

    private Long id;
    /**
     * 企业id
     */
    private Long qiyeId;
    /**
     * 部门名称
     */
    private String name;
    /**
     * 父级id，默认0
     */
    private Long pid;
    /**
     * 层级，从1开始
     */
    private Integer level;
    /**
     * 完整路径，逗号分隔
     */
    private String path;
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;
    @TableLogic
    private Boolean delFlag;


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getQiyeId() {
        return qiyeId;
    }

    public void setQiyeId(Long qiyeId) {
        this.qiyeId = qiyeId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Long getPid() {
        return pid;
    }

    public void setPid(Long pid) {
        this.pid = pid;
    }

    public Integer getLevel() {
        return level;
    }

    public void setLevel(Integer level) {
        this.level = level;
    }

    public String getPath() {
        return path;
    }

    public void setPath(String path) {
        this.path = path;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Boolean getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(Boolean delFlag) {
        this.delFlag = delFlag;
    }

    public static final String ID = "id";

    public static final String QIYE_ID = "qiye_id";

    public static final String NAME = "name";

    public static final String PID = "pid";

    public static final String LEVEL = "level";

    public static final String PATH = "path";

    public static final String CREATE_TIME = "create_time";

    public static final String UPDATE_TIME = "update_time";

    public static final String DEL_FLAG = "del_flag";

    @Override
    protected Serializable pkVal() {
        return this.id;
    }

    @Override
    public String toString() {
        return "AdminDept{" +
        "id=" + id +
        ", qiyeId=" + qiyeId +
        ", name=" + name +
        ", pid=" + pid +
        ", level=" + level +
        ", path=" + path +
        ", createTime=" + createTime +
        ", updateTime=" + updateTime +
        ", delFlag=" + delFlag +
        "}";
    }
}
